package com.meida.module.bus.client.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.meida.common.mybatis.annotation.TableAlias;
import com.meida.common.mybatis.base.entity.AbstractAllEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * 贵宾厅/贵宾通道预约表
 *
 * @author flyme
 * @date 2022-03-01
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("bus_appointment")
@TableAlias("appointment")
@ApiModel(value = "BusAppointment对象", description = "贵宾厅/贵宾通道预约表")
public class BusAppointment extends AbstractAllEntity {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "主键")
    @TableId(value = "appointmentId", type = IdType.ASSIGN_ID)
    private Long appointmentId;

    @ApiModelProperty(value = "物品Id")
    private Long userGoodsId;

    @ApiModelProperty(value = "预约(1贵宾厅，2贵宾通道）")
    private Integer appointType;

    @ApiModelProperty(value = "贵宾厅/贵宾通道Id")
    private Long targetId;

    private String vipCardNo;

    @ApiModelProperty(value = "航班号")
    private String flightNumber;

    @ApiModelProperty(value = "起飞时间")
    private String takeOffTime;

    @ApiModelProperty(value = "始发地")
    private String originatingPlace;

    @ApiModelProperty(value = "到达地")
    private String destinationPlace;

    @ApiModelProperty(value = "姓名")
    private String userName;

    @ApiModelProperty(value = "航班日期")
    private String flightDate;

    @ApiModelProperty(value = "证件类型（1身份证，2护照,3港澳通行证，4台胞证）")
    private Integer identityType;

    @ApiModelProperty(value = "证件号")
    private String identityNo;

    @ApiModelProperty(value = "电话")
    private String phone;

    @ApiModelProperty(value = "预约操作者")
    private Long userId;

    private Long orderdetailId;

    @ApiModelProperty(value = "(预约状态1待审核，2审核成功，3审核失败)")
    private Integer appointmentState;

    @ApiModelProperty(value = "(1短信，2系统消息，3全部)")
    private Integer remindWay;

    @ApiModelProperty(value = "(预约来源1商城购买，2会员卡权益使用)")
    private Integer sourceType;

    private String useCode;

    private Integer appointmentUseNum;

}
